clear
set more off

local yearlist $yearlist
local varlist1 $varlist1

*Get data
use ${tempdir}/panelreg_inddata_30yr_sdx.dta, clear

*Variables for the relevant marriagemarket and childhood years
gen maryear = year2 - 10
gen chyear = year2 - 30

*Here, assign the state the match the panel controls as statefip, state of residence
*Change to bpl to match on birth place instead
gen fips = statefip


* Regressions of ever married status
egen firstcode = group(sex firstsoundex year2)

gen int bpl2 = bpl
replace bpl2 = 9999 if bpl>100

gen byte foreign_born = bpl2>100 if bpl2~=.

sort year2 foreign_born

gen logoccscore_gap = logoccscore_father_spouse - logoccscore_father
gen abs_agegap = abs(agegap)

gen urb = urban==2 if urban!=.
label var urb "Urban dummy"


forvalues i = 1/4 {
	gen q`i' = qtl_score_wgt_full==`i'
	replace q`i'=. if qtl_score_wgt_full==.
}

foreach y in `yearlist' {
		gen y`y' = year2==`y'
}

forvalues i=1/4 {
	foreach y in `yearlist' {
		gen q`i'_`y' = q`i'*y`y'
	}
}

local dep_ever_married = 1
local dep_logoccscore_dadinlaw_temp = 2
local dep_logoccscore_husband_temp = 3
local dep_agegap = 4

gen logoccscore_dadinlaw_temp = logoccscore_father_spouse 
gen logoccscore_husband_temp = log(husboccscore)
gen husb_parent_qtl = qtl_score_wgt_full_spouse

cap postclose results
postfile results tag depvar spec qtile year b se using "$tempdir/reg_robust_sdx.dta", replace

local c_stres ""
local c_stbpl "i.foreign_born##i.year2"


foreach var of varlist ever_married logoccscore_dadinlaw_temp logoccscore_husband_temp agegap {

* Ever married regressions -- no bpl controls
reg `var' `varlist1' i.age foreign_born if sex==2, cluster(firstcode)
gen s1_`var'1 = e(sample)

forvalues i=2/4 {
	*local b`i'_1880 = _b[q`i']
	foreach y in `yearlist' {
		local b`i'_`y' = _b[q`i'_`y']
		local se`i'_`y' = _se[q`i'_`y']
	}
}

forvalues i=2/4 {
	foreach y in `yearlist' {
		post results (1) (`dep_`var'') (1) (`i') (`y') (`b`i'_`y'') (`se`i'_`y'')
	}
}

* Ever married regressions -- full bpl controls
reg `var' `varlist1' i.age i.bpl2##i.year2 if sex==2, cluster(firstcode)
gen s2_`var'1 = e(sample)

forvalues i=2/4 {
	*local b`i'_1880 = _b[q`i']
	foreach y in `yearlist' {
		local b`i'_`y' = _b[q`i'_`y']
		local se`i'_`y' = _se[q`i'_`y']
	}
}

forvalues i=2/4 {
	foreach y in `yearlist' {
		post results (1) (`dep_`var'') (2) (`i') (`y') (`b`i'_`y'') (`se`i'_`y'')
	}
}

}	

postclose results


save "${tempdir}reg_data_sdx.dta", replace 

clear 
save "${tempdir}reg_nobs_sdx.dta", replace empty

local dep_ever_married = 1
local dep_logoccscore_dadinlaw_temp = 2
local dep_logoccscore_husband_temp = 3
local dep_agegap = 4

foreach x in 1 {
foreach var in ever_married logoccscore_dadinlaw_temp logoccscore_husband_temp agegap {
foreach spec in 1 2 {

use "${tempdir}reg_data_sdx.dta", clear

keep if s`spec'_`var'`x' == 1

sort year2 firstsoundex
by year2 firstsoundex: gen nnames_female = _n == 1

if "`var'" == "logoccscore_dadinlaw_temp" {
sort year2 spousefirstsoundex
by year2 spousefirstsoundex: gen nnames_male = _n == 1
	}
	
collapse (sum) nobs=s`spec'_`var'`x' nnames_*, by(year2)	

gen tag = `x'
gen depvar = `dep_`var''
gen spec = `spec'

rename year2 year 

append using "${tempdir}reg_nobs_sdx.dta"
save "${tempdir}reg_nobs_sdx.dta", replace 

}
}
}

use "$tempdir/reg_robust_sdx.dta", clear
merge m:1 tag depvar spec year using "${tempdir}reg_nobs_sdx.dta"

export excel using "$outputdir/Regression Robustness.xlsx", sheet("soundex", replace) firstrow(var)

erase "${tempdir}reg_data_sdx.dta"
erase "${tempdir}reg_nobs_sdx.dta"





